home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs07.d81 / scntcalc.prg (.txt) < prev    next >
Commodore BASIC  |  2009-10-10  |  12KB  |  472 lines

  1. 10 DIM CA$(30),KE$(7,6),YP(7,6),XP(7,6),LU(7,6),HE$(3,25)
  2. 15 IA$="0123456789.":IB$="/*-+"
  3. 16 RD=180/3.1415927:DR=3.1415927/180
  4. 17 X1=0:X2=0:XV$="":XY$="":I$=""
  5. 18 DG=1:FC=1:YA=0:XA=0:PR=2:FE =1:FT=1
  6. 19 GOSUB 9000
  7. 20 CA$(1)="[213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]"
  8. 30 CA$(2)="[194]F[213][195][195][195][195][195][195][195][195][195][195][195][195][195][201]D[194]"
  9. 40 CA$(3)="[194] [194]             [194] [194]"
  10. 50 CA$(4)="[194]M[202][195][195][195][195][195][195][195][195][195][195][195][195][195][203]R[194]"
  11. 60 CA$(5)="[194]                 [194]"
  12. 70 CA$(6)="[194] 2ND 10X  EX  [255]  [194]"
  13. 80 CA$(7)="[194] FNC LOG  LN RND [194]"
  14. 90 CA$(8)="[194]                 [194]"
  15. 100 CA$(9)="[194] P[209]R S-1 C-1 T-1 [194]"
  16. 110 CA$(10)="[194] D[209]R SIN COS TAN [194]"
  17. 120 CA$(11)="[194]                 [194]"
  18. 130 CA$(12)="[194] Y1X SQR  N! 1/X [194]"
  19. 140 CA$(13)="[194] Y^X X^2  CE Y[209]X [194]"
  20. 150 CA$(14)="[194]                 [194]"
  21. 160 CA$(15)="[194] 7 8 9 /  %  F[209]E [194]"
  22. 170 CA$(16)="[194]                 [194]"
  23. 180 CA$(17)="[194] 4 5 6 * Y=X ME+ [194]"
  24. 190 CA$(18)="[194]                 [194]"
  25. 200 CA$(19)="[194] 1 2 3 - X[209]M +/- [194]"
  26. 210 CA$(20)="[194]                 [194]"
  27. 220 CA$(21)="[194] . 0 = + RCL CLR [194]"
  28. 230 CA$(22)="[202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
  29. 240 REM
  30. 250 REM
  31. 260 REM
  32. 270 REM
  33. 280 POKE 53280,0:POKE 53281,0:PRINT"[147]"
  34. 290 PRINT"[155]";
  35. 300 FOR K = 1 TO 22
  36. 310 PRINT "           ";CA$(K)
  37. 320 NEXT K
  38. 325 PRINT"            PRESS <Q> TO QUIT  "
  39. 330 KE$(1,1)="2ND[157][157][157]FNC"
  40. 340 KE$(1,2)="10X[157][157][157]LOG"
  41. 350 KE$(1,3)=" EX[157][157][157] LN"
  42. 360 KE$(1,4)=" [255] [157][157][157]RND"
  43. 370 KE$(2,1)="P[209]R[157][157][157]D[209]R"
  44. 380 KE$(2,2)="S-1[157][157][157]SIN"
  45. 390 KE$(2,3)="C-1[157][157][157]COS"
  46. 400 KE$(2,4)="T-1[157][157][157]TAN"
  47. 410 KE$(3,1)="Y1X[157][157][157]Y^X"
  48. 420 KE$(3,2)="SQR[157][157][157]X^2"
  49. 430 KE$(3,3)=" N![157][157][157] CE"
  50. 440 KE$(3,4)="1/X[157][157][157]Y[209]X"
  51. 450 KE$(4,1)="7"
  52. 460 KE$(4,2)="8"
  53. 470 KE$(4,3)="9"
  54. 480 KE$(4,4)="/"
  55. 490 KE$(4,5)="%"
  56. 500 KE$(4,6)="F[209]E"
  57. 510 KE$(5,1)="4"
  58. 520 KE$(5,2)="5"
  59. 530 KE$(5,3)="6"
  60. 540 KE$(5,4)="*"
  61. 550 KE$(5,5)="Y=X"
  62. 560 KE$(5,6)="ME+"
  63. 570 KE$(6,1)="1"
  64. 580 KE$(6,2)="2"
  65. 590 KE$(6,3)="3"
  66. 600 KE$(6,4)="-"
  67. 610 KE$(6,5)="X[209]M"
  68. 620 KE$(6,6)="+/-"
  69. 630 KE$(7,1)="."
  70. 640 KE$(7,2)="0"
  71. 650 KE$(7,3)="="
  72. 660 KE$(7,4)="+"
  73. 670 KE$(7,5)="RCL"
  74. 680 KE$(7,6)="CLR"
  75. 690 REM LOAD SCREEN LOCATION DATA
  76. 700 DATA 6,13,1,6,17,2,6,21,3,6,25,4,0,0,4,0,0,4
  77. 710 DATA 9,13,1,9,17,2,9,21,3,9,25,4,0,0,4,0,0,4
  78. 720 DATA 12,13,1,12,17,2,12,21,3,12,25,4,0,0,4,0,0,4
  79. 730 DATA 15,13,1,15,15,2,15,17,3,15,19,4,15,22,5,15,25,6
  80. 740 DATA 17,13,1,17,15,2,17,17,3,17,19,4,17,21,5,17,25,6
  81. 750 DATA 19,13,1,19,15,2,19,17,3,19,19,4,19,21,5,19,25,6
  82. 760 DATA 21,13,1,21,15,2,21,17,3,21,19,4,21,21,5,21,25,6
  83. 770 FOR I = 1 TO 7
  84. 780 FOR J= 1 TO 6
  85. 790 READ YP(I,J),XP(I,J),LU(I,J)
  86. 800 NEXT J:NEXT I
  87. 805 GOSUB 6850
  88. 810 Y=1:X=1
  89. 820 POKE 782,13:POKE 781,6:SYS 65520
  90. 830 PRINT"";KE$(Y,X);"[146]"
  91. 835 POKE 55404,2
  92. 836 POKE 781,3:POKE 782,14:SYS 65520
  93. 837 PRINT "0.00000000000"
  94. 840 GOSUB 2000
  95. 845 PRINT"[147]":POKE 53280,3 :POKE 53281,14:PRINT"[159]"
  96. 850 END
  97. 2000 Y=1:X=1:XV$=""
  98. 2010 Y1=Y:X1=X:Q=0:Q1=0
  99. 2020 I$=""
  100. 2030 GET I$ :IF I$="" THEN GOTO 2030
  101. 2040 IF I$= CHR$(17) THEN Y=Y+1:GOSUB 2170:GOTO 2160
  102. 2050 IF I$=CHR$(145) THEN Y=Y-1:GOSUB 2170:GOTO 2160
  103. 2060 IF I$=CHR$(29)  THEN X=X+1:GOSUB 2170:GOTO 2160
  104. 2070 IF I$=CHR$(157) THEN X=X-1:GOSUB 2170:GOTO 2160
  105. 2080 GOSUB 2350
  106. 2090 IF I$="Q" THEN RETURN
  107. 2095 IF I$="F" THEN GOSUB 3010:GOTO 2160
  108. 2097 IF I$="?" THEN GOSUB 7000: GOTO 2160
  109. 2098 IF I$="C" THEN GOSUB 4070:GOTO 2160
  110. 2100 IF I$=CHR$(13) THEN GOSUB 5000:GOTO2160
  111. 2110 IF Q1 > 0 THEN OP=Q1:GOSUB2500:GOTO2160
  112. 2120 IF I$="E" THEN GOTO 2140
  113. 2125 IF I$=CHR$(61) THEN GOSUB 2500 :GOTO2160
  114. 2130 IF Q=0 THEN GOTO 2160
  115. 2140 XV$=XV$+I$
  116. 2150 GOSUB 2420
  117. 2160 GOTO 2010
  118. 2170 IF Y>7 THEN Y=1
  119. 2180 IF Y<1 THEN Y=7
  120. 2190 IF X>6 THEN X=1
  121. 2200 IF X<1 THEN X=6
  122. 2210 POKE 782,XP(Y1,LU(Y1,X1))
  123. 2220 POKE 781,YP(Y1,LU(Y1,X1))
  124. 2230 SYS 65520
  125. 2240 PRINT KE$(Y1,LU(Y1,X1))
  126. 2250 POKE 782,XP(Y,LU(Y,X))
  127. 2260 POKE 781,YP(Y,LU(Y,X))
  128. 2270 SYS 65520
  129. 2280 PRINT"";KE$(Y,LU(Y,X));"[146]"
  130. 2290 RETURN
  131. 2340 REM INSTR FNC
  132. 2350 FOR KK = 1 TO 11
  133. 2360 IF KK>4 THEN GOTO 2380
  134. 2370 IF I$=MID$(IB$,KK,1) THEN Q1=KK
  135. 2380 IF I$=MID$(IA$,KK,1) THEN Q=KK
  136. 2390 NEXT KK:RETURN
  137. 2400 REM
  138. 2410 REM DISPLAY WHILE INPUTING VAL
  139. 2420 DL=LEN(XV$)
  140. 2430 IF DL> 13 THEN XV$=LEFT$(XV$,13):GOTO 2420
  141. 2440 POKE 781,3:POKE 782,14:SYS 65520
  142. 2450 PRINT"             ":DL=14+(13-DL)
  143. 2460 POKE 781,3:POKE 782,DL:SYS 65520
  144. 2470 PRINT XV$
  145. 2480 RETURN
  146. 2490 REM
  147. 2500 XT=0:XT=VAL(XV$):XV$=""
  148. 2510 IF XT= 0 THEN GOTO 2610
  149. 2520 IF XA= 0 THEN XA=XT: GOTO 2610
  150. 2530 X2=XT
  151. 2540 ON OP GOSUB 2570,2580,2590,2600
  152. 2550 XV$="":X2=0
  153. 2560 GOTO 2610
  154. 2570 XA=XA/X2:RETURN
  155. 2580 XA=XA*X2:RETURN
  156. 2590 XA=XA-X2:RETURN
  157. 2600 XA=XA+X2:RETURN
  158. 2610 XY$=STR$(XA):FL=0:RQ=0:EN=0:PL=0
  159. 2615 IF VAL(XY$)=0 THEN XY$="0.00"
  160. 2620 FOR I = 1 TO LEN (XY$)
  161. 2640 IF MID$(XY$,I,1)="." THEN FL=1:RQ=I
  162. 2650 IF MID$(XY$,I,1)="E" THEN EN=1:FE=2
  163. 2660 NEXT I
  164. 2670 ON FE GOSUB 2690,2750
  165. 2680 RETURN
  166. 2690 IF LEN(XY$) > 13 AND FL=1 THEN XY$= LEFT$(XY$,13):GOTO 2720
  167. 2700 IF FL=0 THEN XY$=XY$+"."
  168. 2710 IF LEN (XY$) < 13 THEN XY$=XY$+"0":GOTO 2710
  169. 2720 POKE 781,3:POKE 782,14:SYS 65520
  170. 2730 PRINT"             [157][157][157][157][157][157][157][157][157][157][157][157][157]";XY$
  171. 2740 RETURN
  172. 2750 IF EN=1 THEN GOTO 2880
  173. 2755 IF FL=0 THEN XY$=XY$+".":RQ=LEN(XY$):PL=RQ-2
  174. 2760 IF FL=1 THEN PL=RQ-2
  175. 2770 LS$=LEFT$(XY$,(RQ-1))
  176. 2780 RS$=RIGHT$(XY$,(LEN(XY$)-RQ))
  177. 2790 XY$=LS$+RS$
  178. 2800 LS$=LEFT$(XY$,2)+"."
  179. 2810 RS$=RIGHT$(XY$,(LEN(XY$)-2))
  180. 2820 XY$=LS$+RS$
  181. 2830 IF LEN(XY$) < 9 THEN XY$=XY$+"0":GOTO 2830
  182. 2840 XY$=XY$+"E+"+STR$(PL-1)
  183. 2850 POKE781,3:POKE782,14:SYS 65520
  184. 2860 PRINT"             [157][157][157][157][157][157][157][157][157][157][157][157][157]";XY$
  185. 2870 RETURN
  186. 2880 LS$= LEFT$(XY$,9)
  187. 2890 RS$=RIGHT$(XY$,4)
  188. 2900 XY$=LS$+RS$
  189. 2910 POKE 781,3:POKE 782,14:SYS 65520
  190. 2920 PRINT"             [157][157][157][157][157][157][157][157][157][157][157][157][157]";XY$
  191. 2930 RETURN
  192. 3000 REM 2ND FNC KEY
  193. 3010 FC=FC+1:IF FC >2 THEN FC=1
  194. 3020 ON FC GOSUB 3040,3050
  195. 3030 RETURN
  196. 3040 POKE 55388,1: RETURN
  197. 3050 POKE 55388,2:RETURN
  198. 3060 REM 10X-LOG KEY
  199. 3070 ON FC GOSUB 3090,3100
  200. 3080 RETURN
  201. 3090 XA=LOG(XA)/LOG(10):RETURN
  202. 3100 XA=10^XA:RETURN
  203. 3110 REM NATURAL LOG/ANTILOG
  204. 3120 ON FC GOSUB 3140, 3150
  205. 3130 RETURN
  206. 3140 XA=LOG(XA):RETURN
  207. 3150 XA=EXP(XA):RETURN
  208. 3160 REM PI/RND KEY
  209. 3170 ON FC GOSUB 3190, 3200
  210. 3180 RETURN
  211. 3190 XA=RND(0):RETURN
  212. 3200 XA=3.1415927:RETURN
  213. 3210 REM P(null)R/D(null)R KEY
  214. 3220 ON FC GOSUB 3240, 3300
  215. 3230 RETURN
  216. 3240 REM
  217. 3245 DG=DG+1:IF DG>2 THEN DG=1
  218. 3250 ON DG GOSUB 3270,3280
  219. 3260 RETURN
  220. 3270 XA=XA*RD:YA=YA*RD
  221. 3275 POKE 55404,2:POKE 55484,1:RETURN
  222. 3280 XA=XA*DR:YA=YA*DR
  223. 3285 POKE 55404,1:POKE 55484,2:RETURN
  224. 3290 REM POLAR TO RECTANGULAR
  225. 3300 PR=PR+1: IF PR> 2 THEN PR=1
  226. 3310 ON PR GOSUB 3330,3380
  227. 3320 RETURN
  228. 3330 TH=YA:RA=XA
  229. 3340 IF DG=1 THEN TH=TH*DR
  230. 3350 XA=RA*COS(TH)
  231. 3360 YA=RA*SIN(TH)
  232. 3370 RETURN
  233. 3380 RA=SQR(XA^2+YA^2)
  234. 3390 TH=ATN(YA/XA)
  235. 3400 IF DG=1 THEN TH=TH*RD
  236. 3410 XA=RA:YA=TH:RETURN
  237. 3420 RETURN
  238. 3430 ON FC GOSUB 3450,3470
  239. 3440 RETURN
  240. 3450 IF DG=1 THEN XA=XA*DR
  241. 3460 XA=SIN(XA):RETURN
  242. 3470 XA=ATN(XA/SQR(-XA*XA+1))
  243. 3480 IF DG=1 THEN XA=XA*RD
  244. 3490 RETURN
  245. 3500 REM COS/ARCCOSINE
  246. 3510 ON FC GOSUB 3530,3550
  247. 3520 RETURN
  248. 3530 IF DG=1 THEN XA=XA*DR
  249. 3540 XA=COS(XA):RETURN
  250. 3550 XA=-ATN(XA/SQR(-XA*XA+1))+(3.1415927/2)
  251. 3560 IF DG=1 THEN XA=XA*RD
  252. 3570 RETURN
  253. 3580 REM TAN/ATN
  254. 3590 ON FC GOSUB 3610,3630
  255. 3600 RETURN
  256. 3610 IF DG=1 THEN XA=XA*DR
  257. 3620 XA=TAN(XA):RETURN
  258. 3630 XA=ATN(XA)
  259. 3640 IF DG=1 THEN XA=XA*RD
  260. 3650 RETURN
  261. 3660 REM XTH ROOT/Y^XTH POWER
  262. 3670 ON FC GOSUB 3690,3700
  263. 3680 RETURN
  264. 3690 XA=YA^XA:RETURN
  265. 3700 XA=YA^(1/XA):RETURN
  266. 3710 REM SQR/X^2
  267. 3720 ON FC GOSUB 3740 , 3750
  268. 3730 RETURN
  269. 3740 XA=XA^2:RETURN
  270. 3750 XA=SQR(XA):RETURN
  271. 3760 REM FACTORIAL/CLR ENTRY
  272. 3770 ON FC GOSUB 3790,3830
  273. 3780 RETURN
  274. 3790 XV$=""
  275. 3800 POKE 781,3:POKE782,14:SYS 65520
  276. 3810 PRINT"0.00000000000"
  277. 3820 RETURN
  278. 3830 FOR F= INT(XA)-1 TO 1 STEP -1
  279. 3840 XA=INT(XA)*F
  280. 3850 NEXT F:RETURN
  281. 3860 REM RECIPORICAL/SWAP X/Y DISPLAY
  282. 3870 ON FC GOSUB 3890,3910
  283. 3880 RETURN
  284. 3890 TP=XA:XA=YA:YA=TP:
  285. 3900 RETURN
  286. 3910 XA=1/XA:RETURN
  287. 3920 REM PERCENT
  288. 3930 XA=XA/100:RETURN
  289. 3940 REM Y=X
  290. 3950 YA=XA:XA=0:RETURN
  291. 3960 REM X(null)M
  292. 3970 ME=XA:POKE 55468,2
  293. 3980 IF ME=0 THEN POKE 55468,1
  294. 3990 RETURN
  295. 4000 REM RCL
  296. 4010 XA=ME:RETURN
  297. 4020 REM ME+
  298. 4030 ME=ME+XA:POKE 55468,2:RETURN
  299. 4040 REM +/- FUNCTION
  300. 4050 XA=XA * -1:RETURN
  301. 4060 REM CLR FUNCTION
  302. 4070 OP=0:XA=0:YA=0:XV$="":XY$=""
  303. 4080 POKE 781,3:POKE 782,14:SYS 65520
  304. 4090 PRINT"0.00000000000":RETURN
  305. 4100 REM FLOATING POINT TO FIXED NOTATION
  306. 4110 FE = FE +1:IF FE>2 THEN FE=1
  307. 4120 RETURN
  308. 4130 REM = KEY
  309. 4140 GOSUB 2500:RETURN
  310. 4150 REM OPERATIONS
  311. 4160 OP=1:GOTO 4200
  312. 4170 OP=2:GOTO 4200
  313. 4180 OP=3:GOTO 4200
  314. 4190 OP=4
  315. 4200 IF LEN (XV$)>0 THEN GOSUB 2500
  316. 4205 RETURN
  317. 4210 XV$=XV$+"7":GOTO 2420
  318. 4220 XV$=XV$+"8":GOTO 2420
  319. 4230 XV$=XV$+"9":GOTO 2420
  320. 4240 XV$=XV$+"4":GOTO 2420
  321. 4250 XV$=XV$+"5":GOTO 2420
  322. 4260 XV$=XV$+"6":GOTO 2420
  323. 4270 XV$=XV$+"1":GOTO 2420
  324. 4280 XV$=XV$+"2":GOTO 2420
  325. 4290 XV$=XV$+"3":GOTO 2420
  326. 4300 XV$=XV$+".":GOTO 2420
  327. 4310 XV$=XV$+"0":GOTO 2420
  328. 5000 REM RETRIEVE FUNCTIONS
  329. 5010 IF Y>3 AND X<5 THEN GOTO 5030
  330. 5020 XA=VAL(XV$):  XV$=""
  331. 5030 ON Y GOSUB 5070,5090,5110,5130,5150,5170,5190
  332. 5040 IF Y>3 AND X<5 THEN GOTO 5060
  333. 5050 GOSUB 2610
  334. 5055 XV$=STR$(XA)
  335. 5057 IF XV$="0" THEN XV$=""
  336. 5060 RETURN
  337. 5070 ON LU(1,X)GOSUB 3010,3070,3120,3170
  338. 5080 RETURN
  339. 5090 ON LU(2,X)GOSUB 3220,3430,3510,3590
  340. 5100 RETURN
  341. 5110 ON LU(3,X)GOSUB 3670,3720,3770,3870
  342. 5120 RETURN
  343. 5130 ON LU(4,X)GOSUB 4210,4220,4230,4160,3930,4110
  344. 5140 RETURN
  345. 5150 ON LU(5,X)GOSUB 4240,4250,4260,4170,3950,4030
  346. 5160 RETURN
  347. 5170 ON LU(6,X)GOSUB 4270,4280,4290,4180,3970,4050
  348. 5180 RETURN
  349. 5190 ON LU(7,X)GOSUB 4300,4310,4140,4190,4010,4070
  350. 5200 RETURN
  351. 6010 DATA"        CALCULATOR HELP            "
  352. 6020 DATA"                                   "
  353. 6030 DATA" 2ND  SHIFTS BETWEEN UPPER AND     "
  354. 6040 DATA" FNC  LOWER FUNCTIONS              "
  355. 6050 DATA"      (LETTER F IS EQUILIVANT)     "
  356. 6060 DATA"                                   "
  357. 6070 DATA" 10X  COMMON INVERSE LOGARITHM OF X "
  358. 6080 DATA" LOG  COMMON LOGARITHM OF X        "
  359. 6090 DATA"                                   "
  360. 6100 DATA"  EX  NATURAL INV. LOGARITHM OF X  "
  361. 6110 DATA"  LN  NATURAL LOGARITHM OF X       "
  362. 6120 DATA"                                   "
  363. 6130 DATA"  [255]   ASSIGNS 3.1415927 TO X       "
  364. 6140 DATA" RND  RETURNS NORMAL DISTRIBUTION  "
  365. 6150 DATA"      RANDOM NUMBER BETWEEN 0 AND 1"
  366. 6160 DATA"      TO X                         "
  367. 6170 DATA" P[209]R  POLAR TO RECTANGULAR CONVERTE"
  368. 6180 DATA" D[209]R  DEGREE TO RADIAN CONVERSION  "
  369. 6190 DATA"                                   "
  370. 6200 DATA" S-1  INVERSE SINE FUNCTION OF X   "
  371. 6210 DATA" SIN  SINE FUNCTION OF X           "
  372. 6230 DATA"   PRESS <ANY KEY> TO CONTINUE     "
  373. 6240 DATA"        PRESS <Q> TO QUIT          "
  374. 6300 DATA"                                   "
  375. 6310 DATA"        CALCULATOR HELP            "
  376. 6320 DATA"                                   "
  377. 6330 DATA" C-1  INVERSE COSINE  FUNCTION OF X"
  378. 6340 DATA" COS  COSINE FUNCTION OF X         "
  379. 6350 DATA"                                   "
  380. 6360 DATA" T-1  INVERSE TANGENT FUNCTION OF X"
  381. 6370 DATA" TAN  TANGENT FUNCTION OF X        "
  382. 6380 DATA"                                   "
  383. 6390 DATA" Y1X  XTH ROOT OF Y VALUE          "
  384. 6400 DATA" Y^X  Y EXPONET X VALUE            "
  385. 6410 DATA"                                   "
  386. 6420 DATA" SQR  SQUARE ROOT OF X             "
  387. 6430 DATA" X^2  X VALUE SQUARED              "
  388. 6440 DATA"                                   "
  389. 6450 DATA"  N!  FACTORIAL OF X VALUE         "
  390. 6460 DATA"  CE  CLEAR ENTRY                  "
  391. 6470 DATA"                                   "
  392. 6480 DATA" 1/X  RECIPORCAL OF X VALUE        "
  393. 6490 DATA" Y[209]X  SWITCH X AND Y VALUE         "
  394. 6500 DATA"                                   "
  395. 6520 DATA"   PRESS <ANY KEY> TO CONTINUE     "
  396. 6530 DATA"        PRESS <Q> TO QUIT          "
  397. 6540 DATA"                                   "
  398. 6600 DATA"                                   "
  399. 6610 DATA"        CALCULATOR HELP            "
  400. 6620 DATA"                                   "
  401. 6630 DATA" F[209]E  FLOATING POINT TO SCIENTIFIC "
  402. 6640 DATA"                                   "
  403. 6650 DATA" Y=X  X IS ASSIGNED TO Y AND ZEROED"
  404. 6660 DATA"                                   "
  405. 6670 DATA" X[209]M  X VALUE IS PUT INTO MEMORY   "
  406. 6680 DATA"      ZERO X VALUE CLEARS MEMORY   "
  407. 6690 DATA"                                   "
  408. 6700 DATA" RCL  RECALL MEMORY  TO X          "
  409. 6710 DATA"                                   "
  410. 6720 DATA" ME+  ADDS MEMORY TO X VALUE AND   "
  411. 6730 DATA"      STORES RESULT IN MEMORY      "
  412. 6740 DATA"                                   "
  413. 6750 DATA" +/-  CHANGES SIGN OF X            "
  414. 6760 DATA"                                   "
  415. 6770 DATA" CLR  CLEARS CALCULATOR            "
  416. 6780 DATA"      (LETTER C IS EQUALIVANT)     "
  417. 6790 DATA"                                   "
  418. 6800 DATA"  %    DIVIDES X BY 100            "
  419. 6810 DATA"                                   "
  420. 6820 DATA"   PRESS <ANY KEY> TO CONTINUE     "
  421. 6830 DATA"        PRESS <Q> TO QUIT          "
  422. 6840 DATA"                                   "
  423. 6850 FOR I=1 TO 3
  424. 6860 FOR J = 1 TO 24
  425. 6870 READ HE$(I,J)
  426. 6880 NEXT J:NEXT I
  427. 6890 RETURN
  428. 7000 PRINT"[147]";:POKE 53280,1:POKE 53281,1
  429. 7010 PRINT"[144]":BB=1
  430. 7030 PRINT"[147]"
  431. 7040 FOR H = 1 TO 24
  432. 7045 PRINT HE$(BB,H)
  433. 7050 NEXT H
  434. 7060 GET R$:IF R$="" THEN GOTO 7060
  435. 7070 IF R$="Q" THEN GOTO 7110
  436. 7080 BB=BB+1
  437. 7090 IF BB > 3 THEN BB =1
  438. 7100 GOTO 7030
  439. 7110 PRINT"[147]";:POKE 53280,0:POKE 53281,0
  440. 7120 PRINT""
  441. 7130 FOR T = 1 TO 22
  442. 7140 PRINT"           ";CA$(T)
  443. 7150 NEXT T
  444. 7155 PRINT"            PRESS <Q> TO QUIT";
  445. 7160 Y=1:X=1
  446. 7170 POKE 782,13:POKE 781,6:SYS 65520
  447. 7180 PRINT"";KE$(X,Y);"[146]"
  448. 7190 POKE 55404,2
  449. 7200 RETURN
  450. 9000 PRINT"[147][158]":POKE 53280,0:POKE 53281,0
  451. 9002 PRINT"[213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]
  452. 9110 [153]"PEEK      SCIENTIFIC CALCULATOR       PEEK"
  453. 9120 [153]"PEEK                                  PEEK"
  454. 9130 [153]"PEEK       ANOTHER FINE PRODUCT       PEEK"
  455. 9133 [153]"PEEK                                  PEEK"
  456. 9140 [153]"PEEK              FROM                PEEK"
  457. 9142 [153]"PEEK                                  PEEK"
  458. 9144 [153]"CHR$    'NEVER WORKS ELECTRONICS!'   SYS PEEK"
  459. 9145 [153]"PEEK                                  PEEK"
  460. 9150 [153]"PEEK        JOSH30 AND HELENH         PEEK"
  461. 9155 [153]"MID$LENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLEN(null)"
  462. 9160 [153]:[153]:[153]
  463. 9170 [153]" ARROW KEYS MOVE BUTTONS"
  464. 9180 [153]" <RETURN> SELECTS FUNCTION"
  465. 9190 [153]" <F> TOGGLES 2ND FUNCTION KEY"
  466. 9200 [153]" <C> CLEARS CALCULATOR"
  467. 9210 [153]" <?> HELP
  468. 9220 PRINT:PRINT:PRINT" PRESS <ANY KEY> TO BEGIN"
  469. 9230 GET A$:IF A$="" THEN GOTO 9230
  470. 9240 RETURN
  471. 62000 SAVE"CALC",8:SAVE"CALC-BKUP",8
  472.